home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / commodore-users-of-norman / CUON_28_(10-1984).d64 / disk tricks 3 (.txt) < prev    next >
Commodore BASIC  |  2019-04-13  |  1KB  |  29 lines

  1. 100 SYS65517:IFPEEK(781)=22THENMT$="":GOTO2999
  2. 110 MT$=""
  3. 2998 REM END: REM PROGRAM 3, UNSCRATCH FILES
  4. 2999 PRINTMT$
  5. 3000 INPUT "[147]WHICH SECTOR";S$: S=VAL(S$): IF S<0 OR S>19 THEN 3000
  6. 3010 PRINT "WHAT IS THE FIRST BYTE":PRINT"OF THE FILE YOU WISH"
  7. 3011 PRINT"TO UNSCRATCH?"
  8. 3020 INPUT BP$: BP=VAL(BP$): REM INPUT FILE TARGET BYTE FOR UNSCRATCH
  9. 3030 BS=(BP=2)+(BP=34)+(BP=66)+(BP=98)+(BP=130)+(BP=162)+(BP=194)+(BP=226)
  10. 3035 IFBS<>-1THEN3020:REM REJECT INVALID INPUT
  11. 3040 PRINT "SELECT FILE TYPE:"
  12. 3050 PRINT "  1. SEQUENTIAL"
  13. 3060 PRINT "  2. PROGRAM"
  14. 3070 PRINT "  3. USER"
  15. 3080 PRINT "  4. RELATIVE"
  16. 3090 PRINT "WHICH ONE?"
  17. 3100 GET A$: IF A$="" THEN 3100
  18. 3110 A=VAL(A$): IF A<1 OR A>4 THEN 3100: REM REJECT INVALID CHOICE
  19. 3120 B=A+128: REM SET INPUT BYTE TO MATCH DOS FILE CODES
  20. 3130 OPEN 15,8,15,"I": REM OPEN COMMAND CHANNEL TO DISK
  21. 3140 OPEN8,8,8,"#": REM OPEN DIRECT ACCESS CHANNEL TO DISK
  22. 3150 PRINT#15, "U1:"8;0;18;S: REM LOAD SECTOR CONTAINING FILE TO BE UNSCRATCHED
  23. 3160 PRINT#15, "B-P:"8;BP: REM SET BUFFER POINTER TO TARGET ADDRESS
  24. 3170 PRINT#8, CHR$(B);: REM CHANGE TARGET FILE CODE IN CHANNEL 8 BUFFER
  25. 3180 PRINT#15, "U2:"8;0;18;S: REM RETURN CHANGED CONTENTS TO TARGET SECTOR
  26. 3190 CLOSE 8: REM CLOSE DIRECT ACCESS CHANNEL
  27. 3200 CLOSE 15: REM CLOSE COMMAND CHANNEL
  28. 3210 REM GOTO 100: REM RESTART DISPLAY T&S PROGRAM WHEN FIRST REM REMOVED
  29.